<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
	4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	5 <title>JS解密</title>
	6 </head>
7
8 <body>
9     <script>
	     a=62;
	     function encode() {
		     var code = document.getElementById('code').value;
		     code = code.replace(/[ ]+/g, '');
		      code = code.replace(/'/g, "\'");
		     var tmp = code.match(/(w+)/g);
		     tmp.sort();
		      var dict = [];
		     var i, t = '';
		     for(var i=0; i<tmp.length; i++) {
			     if(tmp[i] != t) dict.push(t = tmp[i]);
			      }
		      var len = dict.length;
		     var ch;
		     for(i=0; i<len; i++) {
			     ch = num(i);
			     code = code.replace(new RegExp('\b'+dict[i]+'\b','g'), ch);
			     if(ch == dict[i]) dict[i] = '';
			      }
		     document.getElementById('code').value = "eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}("
		      + "'"+code+"',"+a+","+len+",'"+ dict.join('|')+"'.split('|'),0,{}))";
		     }

	   function num(c) {
		     return(c<a?'':num(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36));
		     }

	    function run() {
		     eval(document.getElementById('code').value);
		     }

	    function decode() {
		     var code = document.getElementById('code').value;
		     code2 = code.replace(/^eval/, '');
		     //alert(code);
		      document.getElementById('code').value = eval(code2);
		     }
	     </script>
48
49     <textarea id=code cols=80 rows=20> 
50 
51     </textarea>
52
53
54     <input type=button onclick=encode() value=编码>
55     <input type=button onclick=run() value=执行>
56     <input type=button onclick=decode() value=解码>
57 </body>
58 </html>